-
Notifications
You must be signed in to change notification settings - Fork 474
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
linux support using liburing #169
Conversation
Garcia6l20
commented
Oct 5, 2020
- CMake support
- io operations using liburing
- supports schedule operation - file_read example with liburing
- (timed_)schedule_operation ok - file_read_operation ok
- file access generic handling - fix dangling references to io_vec - catching uring errors (thrown in io_service corouting)
- required kernel version 5.4 (5.5 for connect/accept operations)
- moved stdcoro.hpp into detail sub-folder
- fix: `for co_await` removed from C++20 - fix: uring operation with offset handling - impl: `cppcoro::net::socket_disconnect_operation_impl` - fix: naming collusion with `socket` - fix: `GENERIC_WRITE` definition for write_only_file
- fix: io_service cancellation - fix: increased max_events in `io_service_fixture`
- remaining deadlock in io_service_tests: multiple I/O threads servicing events - ERROR_MORE_DATA emulation using MSG_TRUNC
- mutext protection of sge and cqe
All tests are passing on GCC11. |
if someone can tell me how check for header and add compile definitions with cake it could probably help me fixing CI |
Hi, thanks a lot for sharing your code. How does your contribution compare to #160? |
It includes what 160 does not. Timed scheduling and network. |
@Garcia6l20 thanks again for your work. It would be great to see liburing support integrated. Your pull request addresses many different problems at once, which makes it difficult to review. It also solves problems which have already been solved in other pull requests. In the cppcoro fork at https://github.com/andreasbuhr/cppcoro I started an effort to merge the contributions from the different existing pull requests and solve only one problem at a time. One of the first steps should be to add CMake support. In https://github.com/andreasbuhr/cppcoro/tree/add_cmake_support I created a branch which does nothing but adding CMake support, based on the different pull requests which exist here. I'd like to invite you to help make it better. Once it is in a good shape, we can add a new pull request which can then (hopefully) be easily merged by Lewis. And then care about the next issue. |
@andreasbuhr Sounds great ! |
Slowing down ! |
Great. If you need any assistance, please drop me a note at andreas@andreasbuhr.de |